package com.ruoyi.bbsAdmin.service;

import java.util.List;

import com.alibaba.fastjson.JSONObject;
import com.ruoyi.bbsAdmin.domain.Content;
import com.ruoyi.bbsAdmin.domain.vo.contentVo;
import com.ruoyi.bbsAdmin.domain.vo.treeSearchStructure;

/**
 * 内容帖Service接口
 * 
 * @author ruoyi
 * @date 2022-04-01
 */
public interface IContentService 
{
    /**
     * 查询内容帖
     * 
     * @param contentid 内容帖主键
     * @return 内容帖
     */
    public Content selectContentByContentid(String contentid);

    /**
     * 查询内容帖列表
     * 
     * @param content 内容帖
     * @return 内容帖集合
     */
    public List<Content> selectContentList(Content content);

    /**
     * 查询内容帖列表
     *
     * @param ContentVo 内容帖
     * @return 内容帖集合
     */
    public List<contentVo> selectContentVoList(contentVo ContentVo);

    public List<contentVo> selectHotPostList(contentVo ContentVo);

    /**
     * 点击树搜索帖子
     * @Param selectTreeContentList
     * @return 帖子集合
     */

    public List<Content> selectTreeContentList(treeSearchStructure treeSearchStructure);

    /**
     * 点击树搜索帖子
     * @Param selectTreeContentList
     * @return 帖子集合
     */

//    public List<contentVo> selectTreeContentVoList(treeSearchStructure treeSearchStructure);

    /**
     * 新增内容帖
     * 
     * @param content 内容帖
     * @return 结果
     */
    public int insertContent(Content content);

    /**
     * 修改内容帖
     * 
     * @param content 内容帖
     * @return 结果
     */
    public int updateContent(Content content);

    /**
     * 批量删除内容帖
     * 
     * @param contentids 需要删除的内容帖主键集合
     * @return 结果
     */
    public int deleteContentByContentids(String[] contentids);

    /**
     * 删除内容帖信息
     * 
     * @param contentid 内容帖主键
     * @return 结果
     */
    public int deleteContentByContentid(String contentid);


    public Boolean deletePostInRedisById(String contentId);

    public Boolean deleteTopPostInRedis(int schoolId);

    public Boolean deleteHomePostListInRedis(int schoolId);

    public Boolean updateHomePostListInRedis(int schoolId);

    //将发布时间多余半个小时和审核违规的帖子改为私密状态
    public int changeAICheckContentState(int schoolId);

    public List<contentVo> selectSAllSchoolContentVoList(contentVo ContentVo);

}
